いいえ、CSSのclass
とオブジェクト指向プログラミング(OOP)のclass
は、名前は同じですが、意味合いや役割に関連性はほとんどありません。全くの別物と考えて差し支えありません。
それぞれの「class」の役割を解説します。
CSSにおける class
CSSのclass
は、HTML要素にグループ名や目印をつけるための属性です。
目的: 複数のHTML要素(例:複数の段落、いくつかの画像、特定種類のボタンなど)に、共通のスタイル(見た目)を適用したい場合に使われます。
使い方:
HTMLのタグに class="任意の名前" という形で属性を追加します。
例: <p class="important-text">これは大事な文章です。</p>
例: <button class="primary-button">送信</button>
CSSファイルで、そのclass名を使ってスタイルを定義します。CSSではclass名の前に.(ドット)をつけます。
例: .important-text { color: red; font-weight: bold; }
例: .primary-button { background-color: blue; color: white; border-radius: 5px; }
イメージ: 「この見た目にしたい要素たちをひとまとめにするためのラベル」のようなものです。同じラベルがついた要素は、同じ見た目になります。
オブジェクト指向プログラミング(OOP)における class
OOPにおけるclass
は、オブジェクト(モノ)を生成するための設計図やテンプレートです。
目的:
現実世界の「モノ」や概念をプログラム上で表現し、それらが持つデータ(属性)や振る舞い(メソッド)を定義します。
似たような機能を持つオブジェクトを、効率的かつ一貫性のある形で作成するために使われます。
使い方:
classを定義し、そのclassが持つべき**属性(データ)とメソッド(関数、振る舞い)**を記述します。
例(Pythonの場合):
Pythonclass Car: # Carというクラス(設計図)の定義 def __init__(self, make, model): # オブジェクトを作る際の初期設定 self.make = make # 属性 self.model = model # 属性 def start_engine(self): # メソッド(振る舞い) print(f"{self.make} {self.model}のエンジンをかけます。")
定義したclassから**オブジェクト(インスタンス)**を生成します。
例(Pythonの場合):
Pythonmy_car = Car("Toyota", "Camry") # Carクラスからmy_carというオブジェクト(実体)を作る your_car = Car("Honda", "Civic") # Carクラスからyour_carという別のオブジェクトを作る my_car.start_engine() # my_carオブジェクトのメソッドを呼び出す
イメージ: 「自動車」という概念の設計図。この設計図があれば、「トヨタのカムリ」や「ホンダのシビック」といった具体的な自動車の「実物」(オブジェクト)をいくつでも作ることができます。それぞれの実物は、設計図が持つ機能(エンジンをかける、走るなど)を持っています。
なぜ名前が同じなのか?
おそらく、両者ともに「共通の特性や機能を持つものをまとめる」という意味合いで「class」という言葉が選ばれたのだと思われます。しかし、その「まとめ方」や「目的」が全く異なるため、混同しないように注意が必要です。
CSSの
class
:見た目をまとめるための「分類」や「ラベル」。OOPの
class
:実体(オブジェクト)を作るための「設計図」や「型」。
したがって、名前は同じですが、別物として理解してください。
0 件のコメント:
コメントを投稿